home *** CD-ROM | disk | FTP | other *** search
/ Acorn Risc Technologies StrongARM CD-ROM / Acorn Risc Technologies StrongARM CD-ROM.iso / ftp / documents / strongarm / intro < prev    next >
Encoding:
Text File  |  1996-07-31  |  2.9 KB  |  76 lines

  1. Introduction to the StrongARM                        Revision 2, 31-Jul-96
  2. =============================
  3.  
  4.  
  5. The StrongARM 110 is a new high-performance processor from Digital
  6. Semiconductor. It offers performance improvements over the ARM710 ranging
  7. from 100% to 1000%, depending on the application.
  8.  
  9. A StrongARM processor card will available for the Risc PC later this year.
  10. It will come with a new ROM set containing RISC OS 3.70, a new StrongARM-
  11. compatible version of RISC OS. These documents provide information on
  12. writing software, and modifying existing software, for StrongARM-based
  13. machines.
  14.  
  15.  
  16. Significant StrongARM features
  17. ------------------------------
  18.  
  19.     * 202MHz core clock
  20.       
  21.     * 5-stage pipeline (Fetch, Issue, Execute, Buffer, Write)
  22.       
  23.     * Separate 16K write-back data cache and 16K instruction cache
  24.       
  25.     * 8 entry write buffer, each entry holding 1-16 bytes
  26.       
  27.     * Fast 32 and 64 bit result multiply instructions
  28.     
  29.     * Averages fewer cycles per instruction than previous ARMs
  30.       
  31.  
  32. Incompatibilities
  33. -----------------
  34. The StrongARM has two significant differences from previous ARMs that
  35. can affect existing programs. Firstly, the split caches mean that
  36. instructions written into memory may linger in the data cache, and not
  37. be in real memory when the instruction cache comes to fetch them. Likewise
  38. if some code is already in the instruction cache, and it is altered, the
  39. changed code will not be noticed. Thus existing self-modifying code and
  40. dynamic code creation or loading will generally not work.
  41.  
  42. RISC OS 3.7 provides a call to synchronise the instruction and data caches,
  43. but this is a slow operation on the StrongARM. Self-modifying code should
  44. therefore be avoided. The most common failures here arise from custom
  45. SWI veneers that assemble code on the stack, dynamic code loading
  46. and linking and custom code squeezing and encryption.
  47.  
  48. The other significant StrongARM change is that storing the PC to memory
  49. (using STR or STM) stores PC+8 rather than PC+12. This can generally be
  50. catered for by judicious use of NOPs to allow for both possibilities.
  51. This affects, for example, APCS stack backtraces and vector claimants
  52. (the example code on PRM page 1-107 will not work, for example).
  53.  
  54. There are other differences that are only likely to be encountered by
  55. low-level system code.
  56.  
  57. Most applications will run unmodified on StrongARM, especially those
  58. written in C and BASIC, but some code will inevitably need modification.
  59.  
  60.  
  61. What to read next
  62. -----------------
  63. The file "Guidelines" gives a general overview of guidelines for authoring
  64. software for use on StrongARM based machines.
  65.  
  66. The file "SAsupport" details the new and extended SWIs in RISC OS 3.7
  67. to support the StrongARM.
  68.  
  69. The file "MiscChange" details other changes in RISC OS 3.7 that are not
  70. related to StrongARM compatibility.
  71.  
  72. The file "Performanc" gives hints on how to improve performance of code
  73. on StrongARM.
  74.  
  75. The file "FIQs" shows how to get FIQ code working on StrongARM.
  76.